<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>

    <script>

        var ajax = {
            get(url, data, cb) {
                var query = '';
                // 判断data类型
                if(typeof data === 'object') {
                    // 是对象
                    for(var key in data) {
                        query += key + '=' + data[key] + '&';
                    }
                    query = query.slice(0, -1);
                }else if(typeof data === 'string'){
                    query = data;
                }else {
                    return new Error('数据格式错误');
                }

                var xhr = null;
                // 能力检测
                if(window.XMLHttpRequest) {
                    // 高级浏览器或ie以上
                    xhr = new XMLHttpRequest();
                }else if(window.ActiveXObject) {
                    // ie8以下
                    xhr = new ActiveXObject('Microft')
                }else {
                    // 其他浏览器
                    return new Error('浏览器版本过低')
                }

                // 监听事件
                xhr.onreadystatechange = funciton() {
                    if(xhr.readystate === 4 && xhr.status === 200 ) {
                        // 已接收到全部文件
                        var obj = xhr.responesText;
                        // 执行毁掉函数
                        cb(obj);
                    }
                }
                xhr.open('get', url + '?' + query, true);
                xhr.send();

            },
            post(url, data, cb) {
                var query = '';
                // 判断data类型
                if(typeof data === 'object') {
                    // 是对象
                    for(var key in data) {
                        query += key + '=' + data[key] + '&';
                    }
                    query = query.slice(0, -1);
                }else if(typeof data === 'string'){
                    query = data;
                }else {
                    return new Error('数据格式错误');
                }

                var xhr = null;
                // 能力检测
                if(window.XMLHttpRequest) {
                    // 高级浏览器或ie以上
                    xhr = new XMLHttpRequest();
                }else if(window.ActiveXObject) {
                    // ie8以下
                    xhr = new ActiveXObject('Microft')
                }else {
                    // 其他浏览器
                    return new Error('浏览器版本过低')
                }

                // 监听事件
                xhr.onreadystatechange = funciton() {
                    if(xhr.readystate === 4 && xhr.status === 200 ) {
                        // 已接收到全部文件
                        var obj = xhr.responesText;
                        // 执行毁掉函数
                        cb(obj);
                    }
                }
                xhr.open('post', url, true);

                // 设置相应头，模拟表单
                xhr.setRequestHeader('content-type', 'appliacttion/x-www-from-urlencoded;charset=utf-')


                xhr.send(data);
            }
        }
        
    </script>
    
</body>
</html>